Use check result to pass around data Bug: b/289433414 Change-Id: Ib0a0bc8fcf2fde74848b5a52ccf6fa897bb04840
diff --git a/web/checks-result.ts b/web/checks-result.ts index 40285a7..caa6c5b 100644 --- a/web/checks-result.ts +++ b/web/checks-result.ts
@@ -7,9 +7,9 @@ export const DATA_SYMBOL = Symbol('chromiumBinarySizeData'); export async function installChecksResult(element: any) { - if (!element?.run) return; + if (!element?.result) return; - const {listings} = element.run[DATA_SYMBOL]; + const {listings} = element.result[DATA_SYMBOL]; if (!listings?.length) { return; } diff --git a/web/chromium-binary-size.ts b/web/chromium-binary-size.ts index 7dd0983..f3eafc7 100644 --- a/web/chromium-binary-size.ts +++ b/web/chromium-binary-size.ts
@@ -203,7 +203,8 @@ summary, message, links, - }); + [DATA_SYMBOL]: {listings}, + } as CheckResult); } else if (['SCHEDULED', 'STARTED', 'CANCELED'].includes(build.status)) { let summary = ''; const builder = this.pluginConfig.tryBuilder; @@ -221,7 +222,8 @@ externalId: resultId, category, summary, - }); + [DATA_SYMBOL]: {listings}, + } as CheckResult); } const actions: Action[] = []; @@ -263,7 +265,6 @@ statusDescription: this.getCheckRunStatusDesc(build), results, actions, - [DATA_SYMBOL]: {listings}, } as CheckRun, ], }; diff --git a/web/chromium-binary-size_test.ts b/web/chromium-binary-size_test.ts index 676873b..71b3faa 100644 --- a/web/chromium-binary-size_test.ts +++ b/web/chromium-binary-size_test.ts
@@ -354,7 +354,7 @@ }, } as any); const run = res.runs![0]; - assert.deepEqual((run as any)[DATA_SYMBOL].listings, [ + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, [ {name: 'bar', allowed: true}, ]); }); @@ -385,7 +385,6 @@ assert.strictEqual(run.status, RunStatus.RUNNABLE); assert.strictEqual(run.results!.length, 0); assert.strictEqual(run.actions![0].name, 'Run'); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, []); // android-binary-size trybot has been scheduled. stubSearch(Promise.resolve({builds: [{status: 'SCHEDULED'}]})); @@ -394,12 +393,12 @@ assert.strictEqual(run.status, 'SCHEDULED'); assert.strictEqual(run.results!.length, 1); assert.strictEqual(run.results![0].category, Category.INFO); + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, []); assert.strictEqual( run.results![0].summary, 'Scheduling the android-binary-size tryjob.' ); assert.strictEqual(run.actions!.length, 0); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, []); // android-binary-size trybot has started. stubSearch(Promise.resolve({builds: [{status: 'STARTED'}]})); @@ -408,12 +407,12 @@ assert.strictEqual(run.status, RunStatus.RUNNING); assert.strictEqual(run.results!.length, 1); assert.strictEqual(run.results![0].category, Category.INFO); + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, []); assert.strictEqual( run.results![0].summary, 'Waiting for android-binary-size trybot run to complete.' ); assert.strictEqual(run.actions!.length, 0); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, []); // android-binary-size trybot but did not produce useful results. stubSearch( @@ -467,8 +466,8 @@ assert.strictEqual(run.status, RunStatus.COMPLETED); assert.strictEqual(run.results!.length, 1); assert.strictEqual(run.results![0].category, Category.INFO); + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, allowedListings); assert.strictEqual(run.actions!.length, 0); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, allowedListings); // android-binary-size trybot but its checks were not successful. const unallowedListings = [ @@ -496,10 +495,10 @@ res = await fetcher.fetchChecks(changeData); run = res.runs![0]; assert.strictEqual(run.status, RunStatus.COMPLETED); + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, unallowedListings); assert.strictEqual(run.results!.length, 1); assert.strictEqual(run.results![0].category, Category.WARNING); assert.strictEqual(run.actions!.length, 0); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, unallowedListings); // android-binary-size trybot was unsuccessful. stubSearch( @@ -524,9 +523,9 @@ run = res.runs![0]; assert.strictEqual(run.status, RunStatus.COMPLETED); assert.strictEqual(run.results!.length, 1); + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, unallowedListings); assert.strictEqual(run.results![0].category, Category.ERROR); assert.strictEqual(run.actions!.length, 0); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, unallowedListings); // android-binary-size trybot was canceled. stubSearch( @@ -544,6 +543,7 @@ run = res.runs![0]; assert.strictEqual(run.status, RunStatus.COMPLETED); assert.strictEqual(run.results!.length, 1); + assert.deepEqual((run.results![0] as any)[DATA_SYMBOL].listings, []); assert.strictEqual(run.results![0].category, Category.INFO); assert.strictEqual( run.results![0].summary, @@ -551,7 +551,6 @@ 'your binary size impact.' ); assert.strictEqual(run.actions![0].name, 'Run'); - assert.deepEqual((run as any)[DATA_SYMBOL].listings, []); }); test('fetchChecks creates message and summary from listings', async () => {